(progn
  (setq hl-line-face-delta #X30FF)
  (defun color-theme-adjust-hl-line-face()
    "Auto adjust hl-line-face by background color."
    (interactive)
    (let* ((color (x-color-values (face-attribute 'default :background))))
      (if (null color)
 	  (error (format "Not support on system %s" system-type))
 	(let ((my-color
	       (mapcar
 		(lambda (x)
 		  (let ((y (/ #XFFFF 4))
 			(delta hl-line-face-delta))
 		    (cond
 		     ((< x (* y 1))
 		      (+ x delta))
 		     ((< x (* y 2))
 		      (+ x delta))
 		     ((< x (* y 3))
 		      (- x delta))
 		     (t
 		      (- x delta)))))
 		color)))
 	  (set-face-attribute
 	   hl-line-face
 	   nil
 	   :background
 	   (concat "#" (mapconcat (lambda (c) (format "%04X" c)) my-color ""))))))))
(defun color-theme-adjust-hl-line-face())

;;color theme
(require 'color-theme)
(eval-after-load "color-theme"
  '(progn
     (color-theme-initialize)
     (color-theme-tangotango)))
					;(color-theme-adjust-hl-line-face)))
					;(color-theme-classic)
					;(color-theme-clarity)
					;(color-theme-tangotango)
					;(add-hook 'color-theme-tangotango 'color-theme-adjust-hl-mode-face)
					;(require 'color-theme-adjust-hl-mode-face)
					;(color-theme-adjust-hl-mode-face)
					;(color-theme-blackboard)
					;(color-theme-tm)
